Method and apparatus for continuous operation of a point-of-sale system during a single point-of-failure

ABSTRACT

A computer network includes servers, controllers, and a plurality of workstations. The servers and controllers are coupled by Ethernet and secondary communication links. The workstations are serially coupled with the controllers. In this network, each server and controller acts as a failsafe and is adapted to assume the functionality of another server or controller in response to failure in that server or controller. In this manner, the secondary communication link assumes functionality of the Ethernet link in response to failure in the Ethernet link. A method of eliminating interruptions in a computer network due to a single point-of-failure includes assuming functionality of a server or controller by another server or controller in response to failure in the server or controller, and assuming functionality of an Ethernet link by a secondary communication link in response to failure in the Ethernet link.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to computer networks and morespecifically relates to a method and apparatus for continuous operationof a point-of-sale system during the occurrence of a singlepoint-of-failure.

2. Description of the Related Art

Reliability is paramount in computer network systems, such aspoint-of-sale systems, which are commonly used in retail saleoperations. A primary source of network failure is cable breakage orfaulty contacts associated with connectors. FIG. 1 shows a conventionalcomputer network system, in which a server 10 preferably communicatesthrough an Ethernet hub 12 and a control unit or controller 14 to eachof a plurality of workstations 16A-16C. The control unit 14 preferablycommunicates with the workstations through a transmit path 22 and areceive path 24. In a point-of-sale system, the workstations 16A-16C arecoupled to a monitor 18 and a keyboard or bump bar 20.

Data is transmitted from the server 10 to the Ethernet hub 12 and thento the control unit 14, which outputs the data on the transmit path 22.The transmit path 22 serially connects each of the plurality ofworkstations 16A-16C in a daisy-chain configuration. Likewise, data istransmitted from one or more of the plurality of workstations 16A-16C onthe receive path 24, which connects the plurality of workstations16A-16C to the control unit 14. The control unit 14 outputs datareceived from the workstations 16A-16C to the server 10 through theEthernet hub 12.

If there is a break in the transmit path 22, at for instance point A,workstation 16C, which is located beyond the break, will not receiveinformation from the control unit 14. Likewise, if there is a break inthe receive path 24, at for instance point B, neither the control unit14 nor the server 10 will receive information from workstations 16A-16C.Malfunctions in the server 10, control unit 14, and Ethernet link wouldlikely result in even more catastrophic communication failures.

Accordingly, it is a goal of the method and system in accordance withthe present invention to provide uninterrupted access to allworkstations in a point-of-sale system despite the occurrence of asingle point-of-failure in the network or malfunctions in the server,control unit, and Ethernet link.

SUMMARY OF THE INVENTION

The foregoing goals are satisfied in accordance with the presentinvention, which, in one embodiment, provides a computer networkincluding a first server, first controller, second server, secondcontroller, and a plurality of workstations. The servers and controllersare coupled to each other through an Ethernet link and one or moresecondary communication links. The plurality of workstations are coupledto each other and the controllers in a serial configuration.

Each of the servers is adapted to assume at least a portion of thefunctionality of another server in response to a failure in theoperation of the other server. Likewise, each of the controllers isadapted to assume at least a portion of the functionality of anothercontroller in response to a failure in the operation of the othercontroller. The secondary communication link is adapted to assume atleast a portion of the functionality of the Ethernet link in response toa failure in the Ethernet link.

Another embodiment of the present invention provides a method ofeliminating interruptions in the operation of a computer network due toa single point-of-failure, which includes providing a first server,coupling a first controller to the first server, and coupling a secondserver to the first server. The method also includes assuming at least aportion of the functionality of the first server by the second server inresponse to a failure in the operation of the first server, assuming atleast a portion of the functionality of the second server by the firstserver in response to a failure in the operation of the second server,and coupling a plurality of workstations to each other and the firstcontroller in a serial configuration.

The method may further include the steps of coupling a second controllerto the second server, and coupling the second controller to the firstcontroller. The method may also include assuming at least a portion ofthe functionality of the first controller by the second controller inresponse to a failure in the operation of the first controller, assumingat least a portion of the functionality of the second controller by thefirst controller in response to a failure in the operation of the secondcontroller, and coupling the plurality of workstations being to eachother, the first controller, and the second controller in a serialconfiguration.

These and other purposes, goals, and advantages of the present inventionwill become apparent from the following detailed description ofillustrative embodiments thereof, which is to be read in connection withthe accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a conventional point-of-sale computernetwork system.

FIG. 2 is a block diagram of a computer network system in accordancewith the present invention, which provides continuous operation despitethe occurrence of a single point-of-failure in a communication link ormalfunctions in major components of the system, such as a server,control unit, or Ethernet link.

FIG. 3 is a flowchart of a routine to monitor operability of servers inthe computer network system in accordance with the present invention.

FIG. 4 is a flowchart of a routine to monitor operability of controllersor control units in the computer network system in accordance with thepresent invention.

FIG. 5 is a flowchart of a routine to monitor operability of an Ethernetlink in the computer network system in accordance with the presentinvention.

FIG. 6 is a flowchart of a routine to monitor operability ofcommunication links between input/output control units or workstationsin the computer network system in accordance with the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 2 is a block diagram of a preferred embodiment of a computernetwork system 26 in accordance with the present invention. The system26 is particularly adapted for use as a point-of-sale system anddistributed computer network. An example of a point-of-sale system, forwhich further detail concerning servers, controllers, and workstationsdescribed herein, is disclosed in U.S. patent application Ser. No.10/714,592 filed on Nov. 14, 2003, which is incorporated herein byreference.

The computer network system 26 is preferably able to continue tofunction despite the occurrence of a single point-of-failure in thesystem. For instance, failure in any one of the components, such as aserver 10 or control unit 14, should not affect normal operation. Thisis achieved by including a secondary server 28 and a secondary controlunit 30. In addition to connecting the servers 10, 28 by an Ethernetlink and hub 12, the controllers or control units 14, 30 are alsopreferably connected to the servers 10, 28 by an RS-232, UniversalSerial Bus (USB), Bluetooth, infrared, and/or radio frequencycommunication link 32, 34, 36, 40. Thus, even if there is a malfunctionin the Ethernet link or hub 12, the system 26 will still preferably beable to continue normal uninterrupted operation.

Software in the primary server 10 preferably monitors the status of thecontrol units 14, 30 in a continuous fashion. If the primary controlunit 14 fails, the primary server 10 preferably detects this event andactivates the secondary control unit 30, which will then take control ofthe network of workstations 16A-16D. If the primary server 10 detectsthat an Ethernet connection has failed, whether it be the Ethernet hub12 or link, the primary server 10 preferably begins communication witheither control unit 14, 30 through at least one of the secondarycommunication links 32, 34, 36, 40.

If the primary server 10 fails or its software crashes, the secondaryserver 28 preferably detects this event and assumes control over thesystem 26. Since the workstations 16A-16D are preferably connected toeach of the primary control unit 14 and the secondary control unit 30 ina serial daisy-chain configuration, any single breakage of the cableconnections in the workstation network will preferably not affect systemoperation since data will still be able to reach of the workstations16A-16D from at least one end of the closed loop path defined by atransmit path 22 and a receive path 24. When the system 26 detects asingle point-of-failure, a warning message is preferably sent to theuser to enable repairs to be performed as soon as possible so that thesituation can be rectified before a second failure develops.

As indicated above, FIG. 2 shows that the Ethernet hub 12 preferablyprovides an Ethernet link as a primary communication path between theprimary server 10, primary control unit 14, secondary server 28,secondary control unit 30, and a plurality of point-of-sale terminals42A-42D. Each of the servers 10, 28 are also preferably connected bysecondary communication links 32, 34, 36, 40, such as an RS-232,Universal Serial Bus (USB), Bluetooth, infrared, and/or radio frequencycommunication link. The transmit path 22 preferably originates from atransmit port of the primary control unit 14, is linked to each of theworkstations 16A-16D in a serial daisy-chain configuration, andterminates at a receive port of the secondary control unit 30. An outputport of the secondary control unit 30 is preferably coupled to an inputport of the primary control unit 14 through the receive path 24.

Despite the “transmit” and “receive” nomenclature, these ports and linksare intended to be bidirectional that are preferably implemented inaccordance with RS-485, but may also include an RS-232, Universal SerialBus (USB), Bluetooth, infrared, and/or radio frequency communicationlink. In this way, communication is possible to and from each of theworkstations 16A-16D despite the occurrence of a single point-of-failureby transmitting from either the primary control unit 14 or the secondarycontrol unit 30. Methods and apparatuses for detecting and locatingcomputer network discontinuities may be used in the workstation network,as further disclosed in U.S. patent application Ser. No. 10/913,194filed Aug. 6, 2004, entitled “Diagnostic Method and Apparatus forDetecting and Locating Computer Network Discontinuities”, which isincorporated herein by reference. Each of the workstations 16A-16D isalso preferably coupled to a monitor 18 and a bump bar or keyboard 20.

FIG. 3 is a flowchart of a preferred routine to monitor operability ofthe primary and secondary servers in the computer network system inaccordance with the present invention. Primary server operation isinitiated and/or continued in step 44, and primary server operability ismonitored by the secondary server in step 46. If there is a primaryserver failure in step 48, that failure is reported in step 50 and theoperability of the secondary server is determined in step 52.

If the secondary server is found to be operational in step 52, thesecondary server operation is initiated in step 54 and its operabilityis monitored by the primary server, if the primary server is capable ofdoing so, in step 56. The operability of the primary server is againverified in step 58 and, if the primary server is operational, theroutine returns to step 44 to continue primary server operation. Itshould also be noted that as long as the primary server remainsoperational in step 48, the routine preferably remains in the loopdefined by steps 44, 46, and 48.

If the primary server is not operational in step 58, and there is afailure in the secondary server in step 60, that failure is reported, ifpossible, in step 62. If the primary server is operational in step 64,the routine returns to step 44 to continue primary server operation.However, if the primary server is determined not to be operational in64, the primary server failure is reported in step 66 and the routineproceeds to shutdown in step 68.

If, in step 52, the secondary server is determined not to beoperational, a secondary server failure is reported, if possible, instep 62 and the routine preferably proceeds to step 64. It should alsobe noted that if the secondary server is determined to be operational(without a malfunction or failure) in step 60, the routine preferablyreturns to step 54 to continue secondary server operation.

FIG. 4 is a flowchart of a preferred routine to monitor operability ofthe controllers or control units in the computer network system inaccordance with the present invention. Primary control unit operation isinitiated and/or continued in step 70, and primary control unitoperability is monitored by the primary or secondary server in step 72.If there is a primary control unit failure in step 74, that failure isreported in step 76 and operability of the secondary control unit isdetermined in step 78.

If the secondary control unit is found to be operational in step 78, thesecondary control unit operation is initiated in step 80 and itsoperability is monitored by the primary or secondary server in step 82.The operability of the primary control unit is again verified in step 84and, if the primary control unit is operational, the routine preferablyreturns to step 70 to continue primary control unit operation. It shouldalso be noted that as long as the primary control unit remainsoperational in step 74, the routine preferably remains in the loopdefined by steps 70, 72, and 74.

If the primary control unit is found not to be operational in step 84and there is a failure in the secondary control unit in step 86, thesecondary control unit failure is reported in step 88 and the routineproceeds to step 90. If the primary control unit is operational in step90, the routine preferably returns to step 70 to continue primarycontrol unit operation. However, if the primary control unit isdetermined not to be operational in 90, the primary control unit failureis reported in step 92 and the routine proceeds to shutdown in step 94.

If, in step 78, the secondary control unit is determined not to beoperational, a secondary control unit failure is reported in step 88 andthe routine preferably proceeds to step 90. It should also be noted thatif the secondary control unit is determined to be operational (without afailure or malfunction) in step 86, the routine preferably returns tostep 80 to continue secondary control unit operation.

FIG. 5 is a flowchart of a preferred routine to monitor operability ofthe Ethernet and secondary communication links in the computer networksystem in accordance with the present invention. The secondarycommunication links are intended to include one or more of an RS-232,Universal Serial Bus (USB), Bluetooth, infrared, and/or radio frequencycommunication link. Ethernet link operation is initiated and/orcontinued in step 96, and Ethernet link operability is monitored by theprimary or secondary server in step 98. If there is an Ethernet linkfailure in step 100, that failure is reported in step 102 and theoperability of the secondary communication link is determined in step104.

If the secondary communication link is found to be operational in step104, the secondary communication link operation is initiated in step 106and its operability is monitored by the primary or secondary server instep 108. The operability of the Ethernet link is again verified in step110 and, if the Ethernet link is operational, the routine preferablyreturns to step 96 to continue Ethernet link operation. It should alsobe noted that as long as the Ethernet link remains operational in step100, the routine preferably remains in the loop defined by steps 96, 98,and 100.

If the Ethernet link is found not to be operational in step 110 andthere is a failure in the secondary communication link in step 112, thesecondary communication link failure is reported in step 114. If theEthernet link is operational in step 116, the routine returns to step 96to continue Ethernet link operation. However, if the Ethernet link isdetermined not to be operational in 116, the Ethernet link failure isreported in step 118 and the routine proceeds to shutdown in step 120.

If, in step 104, the secondary communication link is determined not tobe operational, a secondary communication link failure is reported instep 114 and the routine preferably continues to step 116. It shouldalso be noted that if the secondary communication link is determined tobe operational (without a failure or malfunction) in step 112, theroutine preferably returns to step 106 to continue secondarycommunication link operation.

FIG. 6 is a flowchart of a preferred routine to monitor the operabilityof the communication link between workstations in the computer networksystem in accordance with the present invention. Single control unitoperation, that is, where communication is primarily relied on by theworkstations from either the primary control unit or the secondarycontrol unit is initiated and/or continued in step 122, and either theprimary or secondary control unit monitors operability of the linkbetween the workstations in step 124.

If there is a single point-of-failure in the workstation link in step126, that failure is reported in 128 and, if not, the routine returns tostep 122 to continue single control unit operation. After reporting afailure in step 128, operability of the primary and secondary controlsunits is determined in step 130 and, if both are operational, dualcontrol unit operation is initiated in step 132. In dual control unitoperation, communication to the workstations is provided redundantly byboth the primary and secondary control units, which ensures that eachworkstation receives all communication despite the occurrence of asingle point-of-failure in the link between workstations.

Both primary and secondary control units preferably monitor theworkstation link in step 134. If the single point-of-failure in theworkstation link is determined to have been successfully repaired orotherwise eliminated in step 136, the routine preferably returns to step122 to continue single control unit operation. If the singlepoint-of-failure is determined not to have been successfully repaired oreliminated in step 136, the routine preferably determines whether therehas been a second point-of-failure in step 138 and, if not, returns tocontinue dual control unit operation in step 132.

If a dual communication link failure is determined to have occurred instep 138, the routine reports the dual workstation link failure in step140 and proceeds to shutdown in step 142. If both the primary andsecondary master control units are not operational in step 130, theroutine also preferably proceeds to shutdown in step 142.

Accordingly, the method and system in accordance with the presentinvention is able to provide uninterrupted access to all workstations ina point-of-sale system despite the occurrence of a singlepoint-of-failure in the network or malfunctions in the server, controlunit, and Ethernet link between workstations.

Although illustrative embodiments of the present invention have beendescribed herein with reference to the accompanying drawings, it is tobe understood that the invention is not limited to those preciseembodiments, and that various other changes and modifications may beprovided therein by one skilled in the art without departing from thescope or spirit of the invention.

1. A computer network comprising: a first controller; a plurality ofworkstations operatively coupled to the first controller in a serialdaisy-chain configuration to form a first serial transmit path thatextends between the first controller and a first workstation of theplurality of workstations and between each pair of successiveworkstations of the plurality of workstations; a first serveroperatively coupled to the first controller to serve the plurality ofworkstations via the first controller and the first serial transmitpath; a second server operatively coupled to the first server and thefirst controller to serve the plurality of workstations via the firstcontroller and the first serial transmit path in response to a failurein operation of the first server; and a point-of-sale terminaloperatively coupled to the first server and to the second server toprovide point-of-sale information served by the first server or thesecond server to at least one workstation of the plurality ofworkstations via the first controller and the first serial transmitpath.
 2. The computer network defined by claim 1, further comprising asecond controller operatively coupled to the second server, the secondcontroller being operatively coupled to the first controller, theplurality of workstations being operatively coupled to the secondcontroller in the serial daisy-chain configuration to form a secondserial transmit path that extends between the second controller and asecond workstation of the plurality of workstations and between eachpair of successive workstations of the plurality of workstations,wherein the second controller assumes at least a portion of thefunctionality of the first controller in response to a failure inoperation of the first controller, and wherein the first controllerassumes at least a portion of the functionality of the second controllerin response to a failure in operation of the second controller.
 3. Thecomputer network defined by claim 2, further comprising an Ethernetlink, the Ethernet link operatively coupling at least two of the firstserver, second server, first controller, and second controller.
 4. Thecomputer network defined by claim 3, further comprising a secondcommunication link operatively coupling the second controller and atleast one of the first server and the second server, the secondcommunication link comprising at least one of an RS-232, UniversalSerial Bus (USB), Bluetooth, infrared, and radio frequency communicationlink, wherein communications are transmitted via the secondcommunication link in response to a failure in operation of the Ethernetlink.
 5. The computer network defined by claim 2, wherein the pluralityof workstations comprises at least a first workstation and a secondworkstation, the first controller, second controller, first workstation,and second workstation comprising a first port and a second port, thesecond port of the second controller being operatively coupled to thefirst port of the first workstation, the second port of the firstworkstation being operatively coupled to the first port of the secondworkstation, the second port of the second workstation being operativelycoupled to the first port of the first controller, the second port ofthe first controller being operatively coupled to the first port of thesecond controller.
 6. The computer network defined by claim 1, furthercomprising an Ethernet link, the Ethernet link operatively coupling atleast two of the first server, second server, and first controller. 7.The computer network defined by claim 6, further comprising a firstcommunication link operatively coupling the first controller and atleast one of the first server and the second server, the firstcommunication link comprising at least one of an RS-232, UniversalSerial Bus (USB), Bluetooth, infrared, and radio frequency communicationlink, wherein communications are transmitted via the first communicationlink in response to a failure in operation of the Ethernet link.
 8. Thecomputer network defined by claim 1, further comprising a bump bar, thebump bar being operatively coupled to at least one of the plurality ofworkstations.
 9. The computer network defined by claim 1, furthercomprising a monitor, the monitor being operatively coupled to at leastone of the plurality of workstations.
 10. A computer network comprising:a first controller; a second controller; a plurality of workstationsoperatively coupled to the first controller in a serial daisy-chainconfiguration to form a first serial transmit path that extends betweenthe first controller and a first workstation of the plurality ofworkstations and between each pair of successive workstations of theplurality of workstations, the plurality of workstations furtheroperatively coupled to the second controller in the serial daisy-chainconfiguration to form a second serial transmit path that extends betweenthe second controller and a second workstation of the plurality ofworkstations and between each pair of successive workstations of theplurality of workstations, wherein the second controller assumes atleast a portion of the functionality of the first controller in responseto a failure in operation of the first controller, and wherein the firstcontroller assumes at least a portion of the functionality of the secondcontroller in response to a failure in operation of the secondcontroller; a first server operatively coupled to the first controllerand to the second controller to serve the plurality of workstations viathe first controller and the first serial transmit path or the secondcontroller and the second serial transmit path; and a point-of-saleterminal operatively coupled to the first server to providepoint-of-sale information served by the first server to at least oneworkstation of the plurality of workstations via the first controllerand the first serial transmit path or the second controller and thesecond serial transmit path.
 11. The computer network defined by claim10, further comprising a second server operatively coupled to the firstserver, the first controller and the second controller, the secondserver configured to serve the plurality of workstations via the firstcontroller and the first serial transmit path or the second controllerand the second serial transmit path in response to a failure inoperation of the first server.
 12. The computer network defined by claim11, further comprising an Ethernet link, the Ethernet link operativelycoupling at least two of the first server, second server, firstcontroller, and second controller.
 13. The computer network defined byclaim 12, further comprising a second communication link operativelycoupling the second server and at least one of the first controller andthe second controller, the second communication link comprising at leastone of an RS-232, Universal Serial Bus (USB), Bluetooth, infrared, andradio frequency communication link, wherein communications aretransmitted via the second communication link in response to a failurein operation of the Ethernet link.
 14. The computer network defined byclaim 10, further comprising an Ethernet link, the Ethernet linkoperatively coupling at least two of the first server, first controller,and second controller.
 15. The computer network defined by claim 14,further comprising a first communication link operatively coupling thefirst server and at least one of the first controller and the secondcontroller, the first communication link comprising at least one of anRS-232, Universal Serial Bus (USB), Bluetooth, infrared, and radiofrequency communication link, wherein communications are transmitted viathe first communication link in response to a failure in operation ofthe Ethernet link.
 16. The computer network defined by claim 10, whereinthe plurality of workstations comprises at least a first workstation anda second workstation, the first controller, second controller, firstworkstation, and second workstation comprising a first port and a secondport, the second port of the second controller being operatively coupledto the first port of the first workstation, the second port of the firstworkstation being operatively coupled to the first port of the secondworkstation, the second port of the second workstation being operativelycoupled to the first port of the first controller, the second port ofthe first controller being operatively coupled to the first port of thesecond controller.
 17. The computer network defined by claim 10, furthercomprising a bump bar, the bump bar being operatively coupled to atleast one of the plurality of workstations.
 18. The computer networkdefined by claim 10, further comprising a monitor, the monitor beingoperatively coupled to at least one of the plurality of workstations.19. A method of eliminating interruptions in the operation of a computernetwork due to a single point-of-failure, the method comprising thesteps of: providing a first controller; coupling a plurality ofworkstations to the first controller in a serial daisy-chainconfiguration to form a first serial transmit path that extends betweenthe first controller and a first workstation of the plurality ofworkstations and between each pair of successive workstations of theplurality of workstations; coupling a first server to the firstcontroller to serve the plurality of workstations via the firstcontroller and the first serial transmit path; coupling a second serverto the first server and to the first controller to serve the pluralityof workstations via the first controller and the first serial transmitpath in response to a failure in operation of the first server; andcoupling a point-of-sale terminal to the first server and the secondserver to provide point-of-sale information served by the first serveror the second server to at least one workstation of the plurality ofworkstations via the first controller and the first serial transmitpath.
 20. The method of eliminating interruptions in the operation of acomputer network due to a single point-of-failure defined by claim 19,further comprising the steps of: coupling a second controller to thesecond server; coupling the second controller to the first controller;and coupling the plurality of workstations to the second controller inthe serial daisy-chain configuration to form a second serial transmitpath that extends between the second controller and a second workstationof the plurality of workstations and between each pair of successiveworkstations of the plurality of workstations, wherein the secondcontroller assumes at least a portion of the functionality of the firstcontroller in response to a failure in operation of the firstcontroller, and wherein the first controller assumes at least a portionof the functionality of the second controller in response to a failurein operation of the second controller.
 21. The method of eliminatinginterruptions in the operation of a computer network due to a singlepoint-of-failure defined by claim 20, further comprising the step ofcoupling an Ethernet link between at least two of the first server,second server, first controller, and second controller.
 22. The methodof eliminating interruptions in the operation of a computer network dueto a single point-of-failure defined by claim 21, further comprising thesteps of: coupling a second communication link between the secondcontroller and at least one of the first server and the second server,the second communication link comprising at least one of an RS-232,Universal Serial Bus (USB), Bluetooth, infrared, and radio frequencycommunication link; and monitoring operation of the Ethernet link,wherein communications are transmitted via the second communication linkin response to a failure in operation of the Ethernet link.
 23. Themethod of eliminating interruptions in the operation of a computernetwork due to a single point-of-failure defined by claim 20, whereinthe plurality of workstations comprises at least a first workstation anda second workstation, the first controller, second controller, firstworkstation, and second workstation comprising a first port and a secondport, the method further comprising the steps of: coupling the secondport of the second controller to the first port of the firstworkstation; coupling the second port of the first workstation to thefirst port of the second workstation; coupling the second port of thesecond workstation to the first port of the first controller; andcoupling the second port of the first controller to the first port ofthe second controller.
 24. The method of eliminating interruptions inthe operation of a computer network due to a single point-of failuredefined by claim 20, further comprising the step of monitoring theoperation of at least one of the first controller, second controller,first server, and second server by at least one of the first server andthe second sewer.
 25. The method of eliminating interruptions in theoperation of a computer network due to a single point-of failure definedby claim 20, further comprising the step of reporting a failure inoperation of at least one of the first server, second server, firstcontroller, and second controller to a user.
 26. The method ofeliminating interruptions in the operation of a computer network due toa single point-of-failure defined by claim 19, further comprising thestep of coupling an Ethernet link between at least two of the firstserver, second server, and first controller.
 27. The method ofeliminating interruptions in the operation of a computer network due toa single point-of-failure defined by claim 26, further comprising thesteps of: coupling a first communication link between the firstcontroller and at least one of the first server and the second server,the first communication link comprising at least one of an RS-232,Universal Serial Bus (USB), Bluetooth, infrared, and radio frequencycommunication link; and monitoring operation of the Ethernet link,wherein communications are transmitted via the first communication linkin response to a failure in operation of the Ethernet link.
 28. A methodof eliminating interruptions in the operation of a computer network dueto a single point-of failure, the method comprising the steps of:providing a first controller; coupling a second controller to the firstcontroller; and coupling a plurality of workstations to the firstcontroller in a serial daisy-chain configuration to form a first serialtransmit path that extends between the first controller and a firstworkstation of the plurality of workstations and between each pair ofsuccessive workstations of the plurality of workstations; coupling theplurality of workstations to the second controller in the serialdaisy-chain configuration to form a second serial transmit path thatextends between the second controller and a second workstation of theplurality of workstations and between each pair of successiveworkstations of the plurality of workstations, wherein the secondcontroller assumes at least a portion of the functionality of the firstcontroller in response to a failure in operation of the firstcontroller, and wherein the first controller assumes at least a portionof the functionality of the second controller in response to a failurein operation of the second controller; coupling a first sewer to thefirst controller and the second controller to serve the plurality ofworkstations via the first controller and the first serial transmit pathor the second controller and the second serial transmit path; andcoupling a point-of-sale terminal to the first server to providepoint-of-sale order information served by the first server to at leastone work station of the plurality of workstations via the firstcontroller and the first serial transmit path or the second controllerand the second serial transmit path.
 29. The method of eliminatinginterruptions in the operation of a computer network due to a singlepoint-of-failure defined by claim 28, further comprising the steps of:coupling a second server to the first server; and coupling the secondserver to the first controller and the second controller, wherein thesecond server serves the plurality of workstations via the firstcontroller and the first serial transmit path or the second controllerand the second serial transmit path in response to a failure inoperation of the first server.
 30. The method of eliminatinginterruptions in the operation of a computer network due to a singlepoint-of failure defined by claim 29, further comprising the step ofcoupling an Ethernet link between at least two of the first server,second server, first controller, and second controller.
 31. The methodof eliminating interruptions in the operation of a computer network dueto a single point-of-failure defined by claim 30, further comprising thesteps of: coupling a second communication link between the second serverand at least one of the first controller and the second controller, thesecond communication link comprising at least one of an RS-232,Universal Serial Bus (USB), Bluetooth, infrared, and radio frequencycommunication link; and monitoring operation of the Ethernet link,wherein communications are transmitted via the second communication linkin response to a failure in operation of the Ethernet link.
 32. Themethod of eliminating interruptions in the operation of a computernetwork due to a single point-of-failure defined by claim 29, furthercomprising the step of monitoring the operation of at least one of thefirst controller, second controller, first server, and second server byat least one of the first server and the second server.
 33. The methodof eliminating interruptions in the operation of a computer network dueto a single point-of-failure defined by claim 29, further comprising thestep of reporting a failure in operation of at least one of the firstserver, second server, first controller, and second controller to auser.
 34. The method of eliminating interruptions in the operation of acomputer network due to a single point-of failure defined by claim 28,further comprising the step of coupling an Ethernet link between atleast two of the first server, first controller, and second controller.35. The method of eliminating interruptions in the operation of acomputer network due to a single point-of-failure defined by claim 34,further comprising the steps of: coupling a first communication linkbetween the first server and at least one of the first controller andthe second controller, the first communication link comprising at leastone of an RS-232, Universal Serial Bus (USB), Bluetooth, infrared, andradio frequency communication link; and monitoring operation of theEthernet link, wherein communications are transmitted via the firstcommunication link in response to a failure in operation of the Ethernetlink.
 36. The method of eliminating interruptions in the operation of acomputer network due to a single point-of-failure defined by claim 28,wherein the plurality of workstations comprises at least a firstworkstation and a second workstation, the first controller, secondcontroller, first workstation, and second workstation comprising a firstport and a second port, the method further comprising the steps of:coupling the second port of the second controller to the first port ofthe first workstation; coupling the second port of the first workstationto the first port of the second workstation; coupling the second port ofthe second workstation to the first port of the first controller; andcoupling the second port of the first controller to the first port ofthe second controller.